home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 April: Mac OS SDK / Dev.CD Apr 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Interfaces / AIncludes / CardServices.a < prev    next >
Encoding:
Text File  |  1996-01-24  |  33.5 KB  |  979 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        CardServices.a
  3. ;
  4. ;    Contains:    This file contains constants and data structures that describe
  5. ;                the client interface to Card and Socket Services.
  6. ;
  7. ;     Version:    Technology: PCMCIA Software 2.0
  8. ;                Package:    Universal Interfaces 2.2 in “MPW” on ETO #20
  9. ;
  10. ;    Copyright:    © 1984-1995 by Apple Computer, Inc.
  11. ;                All rights reserved.
  12. ;
  13. ;     Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  14. ;                 stack.  Include the file and version information (from above)
  15. ;                 in the problem description and send to:
  16. ;                     Internet:    apple.bugs@applelink.apple.com
  17. ;                     AppleLink:    APPLE.BUGS
  18. ;
  19.  
  20.     IF &TYPE('__CARDSERVICES__') = 'UNDEFINED' THEN
  21. __CARDSERVICES__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  25.     include 'Types.a'
  26.     ENDIF
  27. ;        include 'ConditionalMacros.a'                                ;
  28.  
  29.     IF &TYPE('__PCCARDTUPLES__') = 'UNDEFINED' THEN
  30.     include 'PCCardTuples.a'
  31.     ENDIF
  32.  
  33.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  34.     include 'MixedMode.a'
  35.     ENDIF
  36.  
  37. CS_MAX_SOCKETS                    EQU        32                    ; a long is used as a socket bitmap
  38.  
  39. ; ••• Should eventually move to <Gestalt.h>
  40. gestaltCardServicesAttr            EQU        'pccd'                ; Card Services attributes
  41. gestaltCardServicesPresent        EQU        0                    ; if set, Card Services is present
  42.  
  43. ; ••• Should eventually move to <Traps.h>
  44. _PCCardDispatch                    EQU        $AAF0                ; Card Services entry trap
  45.  
  46. ;    The PC Card Manager will migrate towards a complete Mac name space very soon.
  47. ;    Part of that process will be to reassign result codes to a range reserved for
  48. ;    the PC Card Manager...the range will be...-9050 to -9305 (decimal inclusive).
  49. ;
  50. ;    result codes
  51. kCSBadAdapterErr                EQU        -9050                ; invalid adapter number
  52. kCSBadAttributeErr                EQU        -9051                ; specified attributes field value is invalid
  53. kCSBadBaseErr                    EQU        -9052                ; specified base system memory address is invalid
  54. kCSBadEDCErr                    EQU        -9053                ; specified EDC generator specified is invalid
  55. kCSBadIRQErr                    EQU        -9054                ; specified IRQ level is invalid
  56. kCSBadOffsetErr                    EQU        -9055                ; specified PC card memory array offset is invalid
  57. kCSBadPageErr                    EQU        -9056                ; specified page is invalid
  58. kCSBadSizeErr                    EQU        -9057                ; specified size is invalid
  59. kCSBadSocketErr                    EQU        -9058                ; specified logical or physical socket number is invalid
  60. kCSBadTypeErr                    EQU        -9059                ; specified window or interface type is invalid
  61. kCSBadVccErr                    EQU        -9060                ; specified Vcc power level index is invalid
  62. kCSBadVppErr                    EQU        -9061                ; specified Vpp1 or Vpp2 power level index is invalid
  63. kCSBadWindowErr                    EQU        -9062                ; specified window is invalid
  64. kCSBadArgLengthErr                EQU        -9063                ; ArgLength argument is invalid
  65. kCSBadArgsErr                    EQU        -9064                ; values in argument packet are invalid
  66. kCSBadHandleErr                    EQU        -9065                ; clientHandle is invalid
  67. kCSBadCISErr                    EQU        -9066                ; CIS on card is invalid
  68. kCSBadSpeedErr                    EQU        -9067                ; specified speed is unavailable
  69. kCSReadFailureErr                EQU        -9068                ; unable to complete read request
  70. kCSWriteFailureErr                EQU        -9069                ; unable to complete write request
  71. kCSGeneralFailureErr            EQU        -9070                ; an undefined error has occurred
  72. kCSNoCardErr                    EQU        -9071                ; no PC card in the socket
  73. kCSUnsupportedFunctionErr        EQU        -9072                ; function is not supported by this implementation
  74. kCSUnsupportedModeErr            EQU        -9073                ; mode is not supported
  75. kCSBusyErr                        EQU        -9074                ; unable to process request at this time - try later
  76. kCSWriteProtectedErr            EQU        -9075                ; media is write-protected
  77. kCSConfigurationLockedErr        EQU        -9076                ; a configuration has already been locked
  78. kCSInUseErr                        EQU        -9077                ; requested resource is being used by a client
  79. kCSNoMoreItemsErr                EQU        -9078                ; there are no more of the requested item
  80. kCSOutOfResourceErr                EQU        -9079                ; Card Services has exhausted the resource
  81.  
  82. ;    messages sent to client's event handler
  83. kCSNullMessage                    EQU        $00                    ; no messages pending (not sent to clients)
  84. kCSCardInsertionMessage            EQU        $01                    ; card has been inserted into the socket
  85. kCSCardRemovalMessage            EQU        $02                    ; card has been removed from the socket
  86. kCSCardLockMessage                EQU        $03                    ; card is locked into the socket with a mechanical latch
  87. kCSCardUnlockMessage            EQU        $04                    ; card is no longer locked into the socket
  88. kCSCardReadyMessage                EQU        $05                    ; card is ready to be accessed
  89. kCSCardResetMessage                EQU        $06                    ; physical reset has completed
  90. kCSInsertionRequestMessage        EQU        $07                    ; request to insert a card using insertion motor
  91. kCSInsertionCompleteMessage        EQU        $08                    ; insertion motor has finished inserting a card
  92. kCSEjectionRequestMessage        EQU        $09                    ; user or other client is requesting a card ejection
  93. kCSEjectionFailedMessage        EQU        $0A                    ; eject failure due to electrical/mechanical problems
  94. kCSPMResumeMessage                EQU        $0B                    ; power management resume (TBD)
  95. kCSPMSuspendMessage                EQU        $0C                    ; power management suspend (TBD)
  96. kCSResetPhysicalMessage            EQU        $0D                    ; physical reset is about to occur on this card
  97. kCSResetRequestMessage            EQU        $0E                    ; physical reset has been requested by a client
  98. kCSResetCompleteMessage            EQU        $0F                    ; ResetCard() background reset has completed
  99. kCSBatteryDeadMessage            EQU        $10                    ; battery is no longer useable, data will be lost
  100. kCSBatteryLowMessage            EQU        $11                    ; battery is weak and should be replaced
  101. kCSWriteProtectMessage            EQU        $12                    ; card is now write protected
  102. kCSWriteEnabledMessage            EQU        $13                    ; card is now write enabled
  103. kCSClientInfoMessage            EQU        $14                    ; client is to return client information
  104. kCSSSUpdatedMessage                EQU        $15                    ; AddSocketServices/ReplaceSocket services has changed SS support
  105. kCSFunctionInterruptMessage        EQU        $16                    ; card function interrupt
  106. kCSAccessErrorMessage            EQU        $17                    ; client bus errored on access to socket
  107. kCSCardUnconfiguredMessage        EQU        $18                    ; a CARD_READY was delivered to all clients and no client 
  108. ;    requested a configuration for the socket
  109. kCSStatusChangedMessage            EQU        $19                    ; status change for cards in I/O mode
  110.  
  111. ;
  112. ;    The following is a mapping of the PCMCIA name space to the Macintosh name space.
  113. ;    These two enum lists will be removed and given to developers as a separate file.
  114. ;
  115. SUCCESS                            EQU        noErr
  116. BAD_ADAPTER                        EQU        kCSBadAdapterErr
  117. BAD_ATTRIBUTE                    EQU        kCSBadAttributeErr
  118. BAD_BASE                        EQU        kCSBadBaseErr
  119. BAD_EDC                            EQU        kCSBadEDCErr
  120. BAD_IRQ                            EQU        kCSBadIRQErr
  121. BAD_OFFSET                        EQU        kCSBadOffsetErr
  122. BAD_PAGE                        EQU        kCSBadPageErr
  123. BAD_SIZE                        EQU        kCSBadSizeErr
  124. BAD_SOCKET                        EQU        kCSBadSocketErr
  125. BAD_TYPE                        EQU        kCSBadTypeErr
  126. BAD_VCC                            EQU        kCSBadVccErr
  127. BAD_VPP                            EQU        kCSBadVppErr
  128. BAD_WINDOW                        EQU        kCSBadWindowErr
  129. BAD_ARG_LENGTH                    EQU        kCSBadArgLengthErr
  130. BAD_ARGS                        EQU        kCSBadArgsErr
  131. BAD_HANDLE                        EQU        kCSBadHandleErr
  132. BAD_CIS                            EQU        kCSBadCISErr
  133. BAD_SPEED                        EQU        kCSBadSpeedErr
  134. READ_FAILURE                    EQU        kCSReadFailureErr
  135. WRITE_FAILURE                    EQU        kCSWriteFailureErr
  136. GENERAL_FAILURE                    EQU        kCSGeneralFailureErr
  137. NO_CARD                            EQU        kCSNoCardErr
  138. UNSUPPORTED_FUNCTION            EQU        kCSUnsupportedFunctionErr
  139. UNSUPPORTED_MODE                EQU        kCSUnsupportedModeErr
  140. BUSY                            EQU        kCSBusyErr
  141. WRITE_PROTECTED                    EQU        kCSWriteProtectedErr
  142. CONFIGURATION_LOCKED            EQU        kCSConfigurationLockedErr
  143. IN_USE                            EQU        kCSInUseErr
  144. NO_MORE_ITEMS                    EQU        kCSNoMoreItemsErr
  145. OUT_OF_RESOURCE                    EQU        kCSOutOfResourceErr
  146.  
  147. ;    messages sent to client's event handler
  148. NULL_MESSAGE                    EQU        kCSNullMessage
  149. CARD_INSERTION                    EQU        kCSCardInsertionMessage
  150. CARD_REMOVAL                    EQU        kCSCardRemovalMessage
  151. CARD_LOCK                        EQU        kCSCardLockMessage
  152. CARD_UNLOCK                        EQU        kCSCardUnlockMessage
  153. CARD_READY                        EQU        kCSCardReadyMessage
  154. CARD_RESET                        EQU        kCSCardResetMessage
  155. INSERTION_REQUEST                EQU        kCSInsertionRequestMessage
  156. INSERTION_COMPLETE                EQU        kCSInsertionCompleteMessage
  157. EJECTION_REQUEST                EQU        kCSEjectionRequestMessage
  158. EJECTION_FAILED                    EQU        kCSEjectionFailedMessage
  159. PM_RESUME                        EQU        kCSPMResumeMessage
  160. PM_SUSPEND                        EQU        kCSPMSuspendMessage
  161. RESET_PHYSICAL                    EQU        kCSResetPhysicalMessage
  162. RESET_REQUEST                    EQU        kCSResetRequestMessage
  163. RESET_COMPLETE                    EQU        kCSResetCompleteMessage
  164. BATTERY_DEAD                    EQU        kCSBatteryDeadMessage
  165. BATTERY_LOW                        EQU        kCSBatteryLowMessage
  166. WRITE_PROTECT                    EQU        kCSWriteProtectMessage
  167. WRITE_ENABLED                    EQU        kCSWriteEnabledMessage
  168. CLIENT_INFO                        EQU        kCSClientInfoMessage
  169. SS_UPDATED                        EQU        kCSSSUpdatedMessage
  170. FUNCTION_INTERRUPT                EQU        kCSFunctionInterruptMessage
  171. ACCESS_ERROR                    EQU        kCSAccessErrorMessage
  172. CARD_UNCONFIGURED                EQU        kCSCardUnconfiguredMessage
  173. STATUS_CHANGED                    EQU        kCSStatusChangedMessage
  174.  
  175. ;----------------        CSAccessConfigurationRegister    ----------------
  176. ; typedef struct AccessConfigurationRegisterPB  AccessConfigurationRegisterPB
  177. AccessConfigurationRegisterPB RECORD    0
  178. socket                     ds.w   1        ; offset: $0 (0)        ;  -> global socket number
  179. action                     ds.b   1        ; offset: $2 (2)        ;  -> read/write
  180. offset                     ds.b   1        ; offset: $3 (3)        ;  -> offset from config register base
  181. value                     ds.b   1        ; offset: $4 (4)        ; <-> value to read/write
  182. padding                     ds.b   1        ; offset: $5 (5)        ; 
  183. sizeof                     EQU *            ; size:   $6 (6)
  184.                         ENDR
  185.  
  186. ;    ‘action’ field values
  187.  
  188. kCSReadConfigRegister            EQU        $00
  189. kCSWriteConfigRegister            EQU        $01
  190.  
  191. ;----------------        CSGetCardServicesInfo            ----------------
  192. ; typedef struct GetCardServicesInfoPB  GetCardServicesInfoPB
  193. GetCardServicesInfoPB     RECORD    0
  194. signature                 ds.b   2        ; offset: $0 (0)        ; <-  two ascii chars 'CS'
  195. count                     ds.w   1        ; offset: $2 (2)        ; <-  total number of sockets installed
  196. revision                 ds.w   1        ; offset: $4 (4)        ; <-  BCD
  197. csLevel                     ds.w   1        ; offset: $6 (6)        ; <-  BCD
  198. reserved                 ds.w   1        ; offset: $8 (8)        ;  -> zero
  199. vStrLen                     ds.w   1        ; offset: $A (10)        ; <-> in: client's buffer size, out: vendor string length
  200. vendorString             ds.l   1        ; offset: $C (12)        ; <-> in: pointer to buffer to hold CS vendor string (zero-terminated)
  201. ;      out: CS vendor string copied to buffer
  202. sizeof                     EQU *            ; size:   $10 (16)
  203.                         ENDR
  204.  
  205. ;----------------        CSGetClientInfo                    ----------------
  206. ; typedef struct ClientInfoParam  ClientInfoParam
  207. ClientInfoParam         RECORD    0
  208. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  209. attributes                 ds.w   1        ; offset: $4 (4)        ; <-> subfunction + bitmapped client attributes
  210. revision                 ds.w   1        ; offset: $6 (6)        ; <-  BCD value of client's revision
  211. csLevel                     ds.w   1        ; offset: $8 (8)        ; <-  BCD value of CS release
  212. revDate                     ds.w   1        ; offset: $A (10)        ; <-  revision date: y[15-9], m[8-5], d[4-0]
  213. nameLen                     ds.w   1        ; offset: $C (12)        ; <-> in: max length of client name string, out: actual length
  214. vStringLen                 ds.w   1        ; offset: $E (14)        ; <-> in: max length of vendor string, out: actual length
  215. nameString                 ds.l   1        ; offset: $10 (16)        ; <-  pointer to client name string (zero-terminated)
  216. vendorString             ds.l   1        ; offset: $14 (20)        ; <-  pointer to vendor string (zero-terminated)
  217. sizeof                     EQU *            ; size:   $18 (24)
  218.                         ENDR
  219.  
  220. ; upper byte of attributes is kCSCardNameSubfunction,
  221. ;                               kCSCardTypeSubfunction,
  222. ;                               kCSHelpStringSubfunction
  223. ; typedef struct AlternateTextStringParam  AlternateTextStringParam
  224. AlternateTextStringParam RECORD    0
  225. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  226. attributes                 ds.w   1        ; offset: $4 (4)        ; <-> subfunction + bitmapped client attributes
  227. socket                     ds.w   1        ; offset: $6 (6)        ;  -> logical socket number
  228. reserved                 ds.w   1        ; offset: $8 (8)        ;  -> zero
  229. length                     ds.w   1        ; offset: $A (10)        ; <-> in: max length of string, out: actual length
  230. text                     ds.l   1        ; offset: $C (12)        ; <-  pointer to string (zero-terminated)
  231. sizeof                     EQU *            ; size:   $10 (16)
  232.                         ENDR
  233.  
  234. ; upper byte of attributes is kCSCardIconSubfunction
  235. ; typedef struct AlternateCardIconParam  AlternateCardIconParam
  236. AlternateCardIconParam     RECORD    0
  237. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  238. attributes                 ds.w   1        ; offset: $4 (4)        ; <-> subfunction + bitmapped client attributes
  239. socket                     ds.w   1        ; offset: $6 (6)        ;  -> logical socket number
  240. iconSuite                 ds.l   1        ; offset: $8 (8)        ; <-  handle to icon suite containing all icons
  241. sizeof                     EQU *            ; size:   $C (12)
  242.                         ENDR
  243.  
  244. ; upper byte of attributes is kCSActionProcSubfunction
  245. ; typedef struct CustomActionProcParam  CustomActionProcParam
  246. CustomActionProcParam     RECORD    0
  247. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  248. attributes                 ds.w   1        ; offset: $4 (4)        ; <-> subfunction + bitmapped client attributes
  249. socket                     ds.w   1        ; offset: $6 (6)        ;  -> logical socket number
  250. sizeof                     EQU *            ; size:   $8 (8)
  251.                         ENDR
  252.  
  253. ; typedef struct GetClientInfoPB  GetClientInfoPB
  254. GetClientInfoPB         RECORD    0
  255. clientInfo                 ds     ClientInfoParam ; offset: $0 (0)
  256.                          ORG 0
  257. alternateTextString         ds     AlternateTextStringParam ; offset: $0 (0)
  258.                          ORG 0
  259. alternateIcon             ds     AlternateCardIconParam ; offset: $0 (0)
  260.                          ORG 0
  261. customActionProc         ds     CustomActionProcParam ; offset: $0 (0)
  262.                          ORG 24
  263. sizeof                     EQU *            ; size:   $18 (24)
  264.                         ENDR
  265.  
  266. ;    ‘attributes’ field values
  267.  
  268. kCSMemoryClient                    EQU        $0001
  269. kCSIOClient                        EQU        $0004
  270. kCSClientTypeMask                EQU        $0007
  271. kCSShareableCardInsertEvents    EQU        $0008
  272. kCSExclusiveCardInsertEvents    EQU        $0010
  273. kCSInfoSubfunctionMask            EQU        $FF00
  274. kCSClientInfoSubfunction        EQU        $0000
  275. kCSCardNameSubfunction            EQU        $8000
  276. kCSCardTypeSubfunction            EQU        $8100
  277. kCSHelpStringSubfunction        EQU        $8200
  278. kCSCardIconSubfunction            EQU        $8300
  279. kCSActionProcSubfunction        EQU        $8400
  280.  
  281. ;----------------        CSGetConfigurationInfo            ----------------
  282. ;----------------        CSModifyConfiguration            ----------------
  283. ;----------------        CSRequestConfiguration            ----------------
  284. ; typedef struct GetModRequestConfigInfoPB  GetModRequestConfigInfoPB
  285. GetModRequestConfigInfoPB RECORD    0
  286. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  287. socket                     ds.w   1        ; offset: $4 (4)        ;  -> logical socket number
  288. attributes                 ds.w   1        ; offset: $6 (6)        ; <-> bitmap of configuration attributes
  289. vcc                         ds.b   1        ; offset: $8 (8)        ; <-> Vcc setting
  290. vpp1                     ds.b   1        ; offset: $9 (9)        ; <-> Vpp1 setting
  291. vpp2                     ds.b   1        ; offset: $A (10)        ; <-> Vpp2 setting
  292. intType                     ds.b   1        ; offset: $B (11)        ; <-> interface type (memory or memory+I/O)
  293. configBase                 ds.l   1        ; offset: $C (12)        ; <-> card base address of configuration registers
  294. status                     ds.b   1        ; offset: $10 (16)        ; <-> card status register setting, if present
  295. pin                         ds.b   1        ; offset: $11 (17)        ; <-> card pin register setting, if present
  296. copy                     ds.b   1        ; offset: $12 (18)        ; <-> card socket/copy register setting, if present
  297. configIndex                 ds.b   1        ; offset: $13 (19)        ; <-> card option register setting, if present
  298. present                     ds.b   1        ; offset: $14 (20)        ; <-> bitmap of which configuration registers are present
  299. firstDevType             ds.b   1        ; offset: $15 (21)        ; <-  from DeviceID tuple
  300. funcCode                 ds.b   1        ; offset: $16 (22)        ; <-  from FuncID tuple
  301. sysInitMask                 ds.b   1        ; offset: $17 (23)        ; <-  from FuncID tuple
  302. manufCode                 ds.w   1        ; offset: $18 (24)        ; <-  from ManufacturerID tuple
  303. manufInfo                 ds.w   1        ; offset: $1A (26)        ; <-  from ManufacturerID tuple
  304. cardValues                 ds.b   1        ; offset: $1C (28)        ; <-  valid card register values
  305. padding                     ds.b   1        ; offset: $1D (29)        ; 
  306. sizeof                     EQU *            ; size:   $1E (30)
  307.                         ENDR
  308.  
  309. ;    ‘attributes’ field values
  310.  
  311. kCSExclusivelyUsed                EQU        $0001
  312. kCSEnableIREQs                    EQU        $0002
  313. kCSVccChangeValid                EQU        $0004
  314. kCSVpp1ChangeValid                EQU        $0008
  315. kCSVpp2ChangeValid                EQU        $0010
  316. kCSValidClient                    EQU        $0020
  317. kCSSleepPower                    EQU        $0040                ; request that power be applied to socket during Sleep
  318. kCSLockSocket                    EQU        $0080
  319. kCSTurnOnInUse                    EQU        $0100
  320.  
  321. ;    ‘intType’ field values
  322. kCSMemoryInterface                EQU        $01
  323. kCSMemory_And_IO_Interface        EQU        $02
  324.  
  325. ;    ‘present’ field values
  326. kCSOptionRegisterPresent        EQU        $01
  327. kCSStatusRegisterPresent        EQU        $02
  328. kCSPinReplacementRegisterPresent EQU        $04
  329. kCSCopyRegisterPresent            EQU        $08
  330.  
  331. ;    ‘cardValues’ field values
  332. kCSOptionValueValid                EQU        $01
  333. kCSStatusValueValid                EQU        $02
  334. kCSPinReplacementValueValid        EQU        $04
  335. kCSCopyValueValid                EQU        $08
  336.  
  337. ;----------------        CSGetClientEventMask            ----------------
  338. ;----------------        CSSetClientEventMask            ----------------
  339. ; typedef struct GetSetClientEventMaskPB  GetSetClientEventMaskPB
  340. GetSetClientEventMaskPB RECORD    0
  341. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  342. attributes                 ds.w   1        ; offset: $4 (4)        ; <-> bitmap of attributes
  343. eventMask                 ds.w   1        ; offset: $6 (6)        ; <-> bitmap of events to be passed to client for this socket
  344. socket                     ds.w   1        ; offset: $8 (8)        ;  -> logical socket number
  345. sizeof                     EQU *            ; size:   $A (10)
  346.                         ENDR
  347.  
  348. ;    ‘attributes’ field values
  349.  
  350. kCSEventMaskThisSocketOnly        EQU        $0001
  351.  
  352. ;    ‘eventMask’ field values
  353. kCSWriteProtectEvent            EQU        $0001
  354. kCSCardLockChangeEvent            EQU        $0002
  355. kCSEjectRequestEvent            EQU        $0004
  356. kCSInsertRequestEvent            EQU        $0008
  357. kCSBatteryDeadEvent                EQU        $0010
  358. kCSBatteryLowEvent                EQU        $0020
  359. kCSReadyChangeEvent                EQU        $0040
  360. kCSCardDetectChangeEvent        EQU        $0080
  361. kCSPMChangeEvent                EQU        $0100
  362. kCSResetEvent                    EQU        $0200
  363. kCSSSUpdateEvent                EQU        $0400
  364. kCSFunctionInterrupt            EQU        $0800
  365. kCSAllEvents                    EQU        $FFFF
  366.  
  367. ;----------------        CSGetFirstClient                ----------------
  368. ;----------------        CSGetNextClient                    ----------------
  369. ; typedef struct GetClientPB  GetClientPB
  370. GetClientPB             RECORD    0
  371. clientHandle             ds.l   1        ; offset: $0 (0)        ; <-  clientHandle for this client
  372. socket                     ds.w   1        ; offset: $4 (4)        ;  -> logical socket number
  373. attributes                 ds.w   1        ; offset: $6 (6)        ;  -> bitmap of attributes
  374. sizeof                     EQU *            ; size:   $8 (8)
  375.                         ENDR
  376.  
  377. ;    ‘attributes’ field values
  378.  
  379. kCSClientsForAllSockets            EQU        $0000
  380. kCSClientsThisSocketOnly        EQU        $0001
  381.  
  382. ;----------------        CSGetFirstTuple                    ----------------
  383. ;----------------        CSGetNextTuple                    ----------------
  384. ;----------------        CSGetTupleData                    ----------------
  385. ; typedef struct GetTuplePB  GetTuplePB
  386. GetTuplePB                 RECORD    0
  387. socket                     ds.w   1        ; offset: $0 (0)        ;  -> logical socket number
  388. attributes                 ds.w   1        ; offset: $2 (2)        ;  -> bitmap of attributes
  389. desiredTuple             ds.b   1        ; offset: $4 (4)        ;  -> desired tuple code value, or $FF for all
  390. tupleOffset                 ds.b   1        ; offset: $5 (5)        ;  -> offset into tuple from link byte
  391. flags                     ds.w   1        ; offset: $6 (6)        ; <-> internal use
  392. linkOffset                 ds.l   1        ; offset: $8 (8)        ; <-> internal use
  393. cisOffset                 ds.l   1        ; offset: $C (12)        ; <-> internal use
  394. tupleCode                 ds.b   1        ; offset: $10 (16)        ; <-  tuple code found
  395. tupleLink                 ds.b   1        ; offset: $11 (17)        ; <-  link value for tuple found
  396.                          ORG 16
  397. tupleDataMax             ds.w   1        ; offset: $10 (16)        ;  -> maximum size of tuple data area
  398. tupleDataLen             ds.w   1        ; offset: $12 (18)        ; <-  number of bytes in tuple body
  399. tupleData                 ds.w   127        ; offset: $14 (20)        ; <-  tuple data
  400.                          ORG 274
  401. sizeof                     EQU *            ; size:   $112 (274)
  402.                         ENDR
  403.  
  404. ;    ‘attributes’ field values
  405.  
  406. kCSReturnLinkTuples                EQU        $0001
  407.  
  408. ;----------------        CSRequestSocketMask                ----------------
  409. ;----------------        CSReleaseSocketMask                ----------------
  410. ; typedef struct ReqRelSocketMaskPB  ReqRelSocketMaskPB
  411. ReqRelSocketMaskPB         RECORD    0
  412. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  413. socket                     ds.w   1        ; offset: $4 (4)        ;  -> logical socket
  414. eventMask                 ds.w   1        ; offset: $6 (6)        ;  -> bitmap of events to be passed to client for this socket
  415. sizeof                     EQU *            ; size:   $8 (8)
  416.                         ENDR
  417.  
  418. ;    ‘eventMask’ field values (see above for Get/SetClientEventMask
  419. ;----------------        CSGetStatus                        ----------------
  420. ; typedef struct GetStatusPB  GetStatusPB
  421. GetStatusPB             RECORD    0
  422. socket                     ds.w   1        ; offset: $0 (0)        ;  -> logical socket number
  423. cardState                 ds.w   1        ; offset: $2 (2)        ; <-  current state of installed card
  424. socketState                 ds.w   1        ; offset: $4 (4)        ; <-  current state of the socket
  425. sizeof                     EQU *            ; size:   $6 (6)
  426.                         ENDR
  427.  
  428. ;    ‘cardState’ field values
  429.  
  430. kCSWriteProtected                EQU        $0001
  431. kCSCardLocked                    EQU        $0002
  432. kCSEjectRequest                    EQU        $0004
  433. kCSInsertRequest                EQU        $0008
  434. kCSBatteryDead                    EQU        $0010
  435. kCSBatteryLow                    EQU        $0020
  436. kCSReady                        EQU        $0040
  437. kCSCardDetected                    EQU        $0080
  438.  
  439. ;    ‘socketState’ field values
  440. kCSWriteProtectChanged            EQU        $0001
  441. kCSCardLockChanged                EQU        $0002
  442. kCSEjectRequestPending            EQU        $0004
  443. kCSInsertRequestPending            EQU        $0008
  444. kCSBatteryDeadChanged            EQU        $0010
  445. kCSBatteryLowChanged            EQU        $0020
  446. kCSReadyChanged                    EQU        $0040
  447. kCSCardDetectChanged            EQU        $0080
  448.  
  449. ;----------------        CSModifyWindow                    ----------------
  450. ;----------------        CSReleaseWindow                    ----------------
  451. ;----------------        CSRequestWindow                    ----------------
  452. ; typedef struct ReqModRelWindowPB  ReqModRelWindowPB
  453. ReqModRelWindowPB         RECORD    0
  454. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  455. windowHandle             ds.l   1        ; offset: $4 (4)        ; <-> window descriptor
  456. socket                     ds.w   1        ; offset: $8 (8)        ;  -> logical socket number
  457. attributes                 ds.w   1        ; offset: $A (10)        ;  -> window attributes (bitmap)
  458. base                     ds.l   1        ; offset: $C (12)        ; <-> system base address
  459. size                     ds.l   1        ; offset: $10 (16)        ; <-> memory window size
  460. accessSpeed                 ds.b   1        ; offset: $14 (20)        ;  -> window access speed (bitmap)
  461. ;        (not applicable for I/O mode)
  462. padding                     ds.b   1        ; offset: $15 (21)        ; 
  463. sizeof                     EQU *            ; size:   $16 (22)
  464.                         ENDR
  465.  
  466. ;    ‘attributes’ field values
  467.  
  468. kCSMemoryWindow                    EQU        $0001
  469. kCSIOWindow                        EQU        $0002
  470. kCSAttributeWindow                EQU        $0004                ; not normally used by Card Services clients
  471. kCSWindowTypeMask                EQU        $0007
  472. kCSEnableWindow                    EQU        $0008
  473. kCSAccessSpeedValid                EQU        $0010
  474. kCSLittleEndian                    EQU        $0020                ; configure socket for little endianess
  475. kCS16BitDataPath                EQU        $0040                ;
  476. kCSWindowPaged                    EQU        $0080                ; 
  477. kCSWindowShared                    EQU        $0100                ;
  478. kCSWindowFirstShared            EQU        $0200                ; 
  479. kCSWindowProgrammable            EQU        $0400                ; 
  480.  
  481. ;    ‘accessSpeed’ field values
  482. kCSDeviceSpeedCodeMask            EQU        $07
  483. kCSSpeedExponentMask            EQU        $07
  484. kCSSpeedMantissaMask            EQU        $78
  485. kCSUseWait                        EQU        $80
  486. kCSAccessSpeed250nsec            EQU        $01
  487. kCSAccessSpeed200nsec            EQU        $02
  488. kCSAccessSpeed150nsec            EQU        $03
  489. kCSAccessSpeed100nsec            EQU        $04
  490. kCSExtAccSpeedMant1pt0            EQU        $01
  491. kCSExtAccSpeedMant1pt2            EQU        $02
  492. kCSExtAccSpeedMant1pt3            EQU        $03
  493. kCSExtAccSpeedMant1pt5            EQU        $04
  494. kCSExtAccSpeedMant2pt0            EQU        $05
  495. kCSExtAccSpeedMant2pt5            EQU        $06
  496. kCSExtAccSpeedMant3pt0            EQU        $07
  497. kCSExtAccSpeedMant3pt5            EQU        $08
  498. kCSExtAccSpeedMant4pt0            EQU        $09
  499. kCSExtAccSpeedMant4pt5            EQU        $0A
  500. kCSExtAccSpeedMant5pt0            EQU        $0B
  501. kCSExtAccSpeedMant5pt5            EQU        $0C
  502. kCSExtAccSpeedMant6pt0            EQU        $0D
  503. kCSExtAccSpeedMant7pt0            EQU        $0E
  504. kCSExtAccSpeedMant8pt0            EQU        $0F
  505. kCSExtAccSpeedExp1ns            EQU        $00
  506. kCSExtAccSpeedExp10ns            EQU        $01
  507. kCSExtAccSpeedExp100ns            EQU        $02
  508. kCSExtAccSpeedExp1us            EQU        $03
  509. kCSExtAccSpeedExp10us            EQU        $04
  510. kCSExtAccSpeedExp100us            EQU        $05
  511. kCSExtAccSpeedExp1ms            EQU        $06
  512. kCSExtAccSpeedExp10ms            EQU        $07
  513.  
  514. ;----------------        CSRegisterClient                ----------------
  515. ;----------------        CSDeregisterClient                ----------------
  516. ; typedef struct ClientCallbackPB  ClientCallbackPB
  517. ClientCallbackPB         RECORD    0
  518. message                     ds.w   1        ; offset: $0 (0)        ;  -> which event this is
  519. socket                     ds.w   1        ; offset: $2 (2)        ;  -> logical socket number
  520. info                     ds.w   1        ; offset: $4 (4)        ;  -> function-specific
  521. misc                     ds.w   1        ; offset: $6 (6)        ;  -> function-specific
  522. reserved                 ds.l   1        ; offset: $8 (8)        ;  -> pointer to MTD request block
  523. buffer                     ds.l   1        ; offset: $C (12)        ;  -> function-specific
  524. clientData                 ds.l   1        ; offset: $10 (16)        ;  -> pointer to client's data (from RegisterClient)
  525. sizeof                     EQU *            ; size:   $14 (20)
  526.                         ENDR
  527.  
  528. ; typedef ClientCallbackPB     *ClientCallbackPBPtr
  529. ; typedef struct RegisterClientPB  RegisterClientPB
  530. RegisterClientPB         RECORD    0
  531. clientHandle             ds.l   1        ; offset: $0 (0)        ; <-  client descriptor
  532. clientEntry                 ds.l   1        ; offset: $4 (4)        ;  -> universal procPtr to client's event handler
  533. attributes                 ds.w   1        ; offset: $8 (8)        ;  -> bitmap of client attributes
  534. eventMask                 ds.w   1        ; offset: $A (10)        ;  -> bitmap of events to notify client
  535. clientData                 ds.l   1        ; offset: $C (12)        ;  -> pointer to client's data
  536. version                     ds.w   1        ; offset: $10 (16)        ;  -> Card Services version this client expects
  537. sizeof                     EQU *            ; size:   $12 (18)
  538.                         ENDR
  539.  
  540. ;    ‘attributes’ field values (see GetClientInfo)
  541. ;    kCSMemoryClient                    = 0x0001,
  542. ;    kCSIOClient                        = 0x0004,
  543. ;    kCSShareableCardInsertEvents    = 0x0008,
  544. ;    kCSExclusiveCardInsertEvents    = 0x0010
  545. ;----------------        CSReleaseConfiguration            ----------------
  546. ; typedef struct ReleaseConfigurationPB  ReleaseConfigurationPB
  547. ReleaseConfigurationPB     RECORD    0
  548. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  549. socket                     ds.w   1        ; offset: $4 (4)        ;  -> 
  550. sizeof                     EQU *            ; size:   $6 (6)
  551.                         ENDR
  552.  
  553. ;----------------        CSResetCard                        ----------------
  554. ; typedef struct ResetCardPB  ResetCardPB
  555. ResetCardPB             RECORD    0
  556. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  557. socket                     ds.w   1        ; offset: $4 (4)        ;  -> 
  558. attributes                 ds.w   1        ; offset: $6 (6)        ;  -> xxx
  559. sizeof                     EQU *            ; size:   $8 (8)
  560.                         ENDR
  561.  
  562. ;----------------        CSValidateCIS                    ----------------
  563. ; typedef struct ValidateCISPB  ValidateCISPB
  564. ValidateCISPB             RECORD    0
  565. socket                     ds.w   1        ; offset: $0 (0)        ;  -> 
  566. chains                     ds.w   1        ; offset: $2 (2)        ;  -> whether link/null tuples should be included
  567. sizeof                     EQU *            ; size:   $4 (4)
  568.                         ENDR
  569.  
  570. ;----------------        CSVendorSpecific                ----------------
  571. ; typedef struct VendorSpecificPB  VendorSpecificPB
  572. VendorSpecificPB         RECORD    0
  573. clientHandle             ds.l   1        ; offset: $0 (0)        ;  -> clientHandle returned by RegisterClient
  574. vsCode                     ds.w   1        ; offset: $4 (4)
  575. socket                     ds.w   1        ; offset: $6 (6)
  576. dataLen                     ds.l   1        ; offset: $8 (8)        ;  -> length of buffer pointed to by vsDataPtr
  577. vsDataPtr                 ds.l   1        ; offset: $C (12)        ;  -> Card Services version this client expects
  578. sizeof                     EQU *            ; size:   $10 (16)
  579.                         ENDR
  580.  
  581. ;    ‘vsCode’ field values
  582.  
  583. vsAppleReserved                    EQU        $0000
  584. vsEjectCard                        EQU        $0001
  585. vsGetCardInfo                    EQU        $0002
  586. vsEnableSocketEvents            EQU        $0003
  587. vsGetCardLocationIcon            EQU        $0004
  588. vsGetCardLocationText            EQU        $0005
  589. vsGetAdapterInfo                EQU        $0006
  590.  
  591. ;///////////////////////////////////////////////////////////////////////////////////////
  592. ;
  593. ;    GetAdapterInfo parameter block (vendor-specific call #6)
  594. ; typedef struct GetAdapterInfoPB  GetAdapterInfoPB
  595. GetAdapterInfoPB         RECORD    0
  596. attributes                 ds.l   1        ; offset: $0 (0)        ; <-  capabilties of socket's adapter
  597. revision                 ds.w   1        ; offset: $4 (4)        ; <-  id of adapter
  598. reserved                 ds.w   1        ; offset: $6 (6)        ; 
  599. numVoltEntries             ds.w   1        ; offset: $8 (8)        ; <-  number of valid voltage values
  600. voltages                 ds.l   1        ; offset: $A (10)        ; <-> array of BCD voltage values
  601. sizeof                     EQU *            ; size:   $E (14)
  602.                         ENDR
  603.  
  604. ;    ‘attributes’ field values
  605.  
  606. kCSLevelModeInterrupts            EQU        $00000001
  607. kCSPulseModeInterrupts            EQU        $00000002
  608. kCSProgrammableWindowAddr        EQU        $00000004
  609. kCSProgrammableWindowSize        EQU        $00000008
  610. kCSSocketSleepPower                EQU        $00000010
  611. kCSSoftwareEject                EQU        $00000020
  612. kCSLockableSocket                EQU        $00000040
  613. kCSInUseIndicator                EQU        $00000080
  614.  
  615. ;///////////////////////////////////////////////////////////////////////////////////////
  616. ;
  617. ;    GetCardInfo parameter block (vendor-specific call #2)
  618. ; typedef struct GetCardInfoPB  GetCardInfoPB
  619. GetCardInfoPB             RECORD    0
  620. cardType                 ds.b   1        ; offset: $0 (0)        ; <-  type of card in this socket (defined at top of file)
  621. subType                     ds.b   1        ; offset: $1 (1)        ; <-  more detailed card type (defined at top of file)
  622. reserved                 ds.w   1        ; offset: $2 (2)        ; <-> reserved (should be set to zero)
  623. cardNameLen                 ds.w   1        ; offset: $4 (4)        ;  -> maximum length of card name to be returned
  624. vendorNameLen             ds.w   1        ; offset: $6 (6)        ;  -> maximum length of vendor name to be returned
  625. cardName                 ds.l   1        ; offset: $8 (8)        ;  -> pointer to card name string (read from CIS), or nil
  626. vendorName                 ds.l   1        ; offset: $C (12)        ;  -> pointer to vendor name string (read from CIS), or nil
  627. sizeof                     EQU *            ; size:   $10 (16)
  628.                         ENDR
  629.  
  630. ;    GetCardInfo card types
  631.  
  632. kCSUnknownCardType                EQU        0
  633. kCSMultiFunctionCardType        EQU        1
  634. kCSMemoryCardType                EQU        2
  635. kCSSerialPortCardType            EQU        3
  636. kCSSerialOnlyType                EQU        0
  637. kCSDataModemType                EQU        1
  638. kCSFaxModemType                    EQU        2
  639. kCSFaxAndDataModemMask            EQU        (kCSDataModemType | kCSFaxModemType)
  640. kCSVoiceEncodingType            EQU        4
  641. kCSParallelPortCardType            EQU        4
  642. kCSFixedDiskCardType            EQU        5
  643. kCSUnknownFixedDiskType            EQU        0
  644. kCSATAInterface                    EQU        1
  645. kCSRotatingDevice                EQU        (0 << 7)
  646. kCSSiliconDevice                EQU        (1 << 7)
  647. kCSVideoAdaptorCardType            EQU        6
  648. kCSNetworkAdaptorCardType        EQU        7
  649. kCSAIMSCardType                    EQU        8
  650. kCSNumCardTypes                    EQU        9
  651.  
  652. ;
  653. ; pascal OSErr CSVendorSpecific(VendorSpecificPB *pb)
  654. ;
  655.     IF ¬ GENERATINGCFM THEN
  656.         Macro
  657.         _CSVendorSpecific
  658.             moveq    #0,d0
  659.             dc.w     $AAF0
  660.         EndM
  661.     ELSE
  662.         IMPORT_CFM_FUNCTION    CSVendorSpecific
  663.     ENDIF
  664.  
  665. ;
  666. ; pascal OSErr CSRegisterClient(RegisterClientPB *pb)
  667. ;
  668.     IF ¬ GENERATINGCFM THEN
  669.         Macro
  670.         _CSRegisterClient
  671.             moveq    #1,d0
  672.             dc.w     $AAF0
  673.         EndM
  674.     ELSE
  675.         IMPORT_CFM_FUNCTION    CSRegisterClient
  676.     ENDIF
  677.  
  678. ;
  679. ; pascal OSErr CSDeregisterClient(RegisterClientPB *pb)
  680. ;
  681.     IF ¬ GENERATINGCFM THEN
  682.         Macro
  683.         _CSDeregisterClient
  684.             moveq    #2,d0
  685.             dc.w     $AAF0
  686.         EndM
  687.     ELSE
  688.         IMPORT_CFM_FUNCTION    CSDeregisterClient
  689.     ENDIF
  690.  
  691. ;
  692. ; pascal OSErr CSGetFirstTuple(GetTuplePB *pb)
  693. ;
  694.     IF ¬ GENERATINGCFM THEN
  695.         Macro
  696.         _CSGetFirstTuple
  697.             moveq    #3,d0
  698.             dc.w     $AAF0
  699.         EndM
  700.     ELSE
  701.         IMPORT_CFM_FUNCTION    CSGetFirstTuple
  702.     ENDIF
  703.  
  704. ;
  705. ; pascal OSErr CSGetNextTuple(GetTuplePB *pb)
  706. ;
  707.     IF ¬ GENERATINGCFM THEN
  708.         Macro
  709.         _CSGetNextTuple
  710.             moveq    #4,d0
  711.             dc.w     $AAF0
  712.         EndM
  713.     ELSE
  714.         IMPORT_CFM_FUNCTION    CSGetNextTuple
  715.     ENDIF
  716.  
  717. ;
  718. ; pascal OSErr CSGetTupleData(GetTuplePB *pb)
  719. ;
  720.     IF ¬ GENERATINGCFM THEN
  721.         Macro
  722.         _CSGetTupleData
  723.             moveq    #5,d0
  724.             dc.w     $AAF0
  725.         EndM
  726.     ELSE
  727.         IMPORT_CFM_FUNCTION    CSGetTupleData
  728.     ENDIF
  729.  
  730. ;
  731. ; pascal OSErr CSGetConfigurationInfo(GetModRequestConfigInfoPB *pb)
  732. ;
  733.     IF ¬ GENERATINGCFM THEN
  734.         Macro
  735.         _CSGetConfigurationInfo
  736.             moveq    #6,d0
  737.             dc.w     $AAF0
  738.         EndM
  739.     ELSE
  740.         IMPORT_CFM_FUNCTION    CSGetConfigurationInfo
  741.     ENDIF
  742.  
  743. ;
  744. ; pascal OSErr CSGetCardServicesInfo(GetCardServicesInfoPB *pb)
  745. ;
  746.     IF ¬ GENERATINGCFM THEN
  747.         Macro
  748.         _CSGetCardServicesInfo
  749.             moveq    #7,d0
  750.             dc.w     $AAF0
  751.         EndM
  752.     ELSE
  753.         IMPORT_CFM_FUNCTION    CSGetCardServicesInfo
  754.     ENDIF
  755.  
  756. ;
  757. ; pascal OSErr CSGetStatus(GetStatusPB *pb)
  758. ;
  759.     IF ¬ GENERATINGCFM THEN
  760.         Macro
  761.         _CSGetStatus
  762.             moveq    #8,d0
  763.             dc.w     $AAF0
  764.         EndM
  765.     ELSE
  766.         IMPORT_CFM_FUNCTION    CSGetStatus
  767.     ENDIF
  768.  
  769. ;
  770. ; pascal OSErr CSValidateCIS(ValidateCISPB *pb)
  771. ;
  772.     IF ¬ GENERATINGCFM THEN
  773.         Macro
  774.         _CSValidateCIS
  775.             moveq    #9,d0
  776.             dc.w     $AAF0
  777.         EndM
  778.     ELSE
  779.         IMPORT_CFM_FUNCTION    CSValidateCIS
  780.     ENDIF
  781.  
  782. ;
  783. ; pascal OSErr CSGetFirstClient(GetClientPB *pb)
  784. ;
  785.     IF ¬ GENERATINGCFM THEN
  786.         Macro
  787.         _CSGetFirstClient
  788.             moveq    #15,d0
  789.             dc.w     $AAF0
  790.         EndM
  791.     ELSE
  792.         IMPORT_CFM_FUNCTION    CSGetFirstClient
  793.     ENDIF
  794.  
  795. ;
  796. ; pascal OSErr CSGetNextClient(GetClientPB *pb)
  797. ;
  798.     IF ¬ GENERATINGCFM THEN
  799.         Macro
  800.         _CSGetNextClient
  801.             moveq    #16,d0
  802.             dc.w     $AAF0
  803.         EndM
  804.     ELSE
  805.         IMPORT_CFM_FUNCTION    CSGetNextClient
  806.     ENDIF
  807.  
  808. ;
  809. ; pascal OSErr CSGetClientInfo(GetClientInfoPB *pb)
  810. ;
  811.     IF ¬ GENERATINGCFM THEN
  812.         Macro
  813.         _CSGetClientInfo
  814.             moveq    #17,d0
  815.             dc.w     $AAF0
  816.         EndM
  817.     ELSE
  818.         IMPORT_CFM_FUNCTION    CSGetClientInfo
  819.     ENDIF
  820.  
  821. ;
  822. ; pascal OSErr CSResetCard(ResetCardPB *pb)
  823. ;
  824.     IF ¬ GENERATINGCFM THEN
  825.         Macro
  826.         _CSResetCard
  827.             moveq    #18,d0
  828.             dc.w     $AAF0
  829.         EndM
  830.     ELSE
  831.         IMPORT_CFM_FUNCTION    CSResetCard
  832.     ENDIF
  833.  
  834. ;
  835. ; pascal OSErr CSRequestWindow(ReqModRelWindowPB *pb)
  836. ;
  837.     IF ¬ GENERATINGCFM THEN
  838.         Macro
  839.         _CSRequestWindow
  840.             moveq    #19,d0
  841.             dc.w     $AAF0
  842.         EndM
  843.     ELSE
  844.         IMPORT_CFM_FUNCTION    CSRequestWindow
  845.     ENDIF
  846.  
  847. ;
  848. ; pascal OSErr CSModifyWindow(ReqModRelWindowPB *pb)
  849. ;
  850.     IF ¬ GENERATINGCFM THEN
  851.         Macro
  852.         _CSModifyWindow
  853.             moveq    #20,d0
  854.             dc.w     $AAF0
  855.         EndM
  856.     ELSE
  857.         IMPORT_CFM_FUNCTION    CSModifyWindow
  858.     ENDIF
  859.  
  860. ;
  861. ; pascal OSErr CSReleaseWindow(ReqModRelWindowPB *pb)
  862. ;
  863.     IF ¬ GENERATINGCFM THEN
  864.         Macro
  865.         _CSReleaseWindow
  866.             moveq    #21,d0
  867.             dc.w     $AAF0
  868.         EndM
  869.     ELSE
  870.         IMPORT_CFM_FUNCTION    CSReleaseWindow
  871.     ENDIF
  872.  
  873. ;
  874. ; pascal OSErr CSRequestConfiguration(GetModRequestConfigInfoPB *pb)
  875. ;
  876.     IF ¬ GENERATINGCFM THEN
  877.         Macro
  878.         _CSRequestConfiguration
  879.             moveq    #27,d0
  880.             dc.w     $AAF0
  881.         EndM
  882.     ELSE
  883.         IMPORT_CFM_FUNCTION    CSRequestConfiguration
  884.     ENDIF
  885.  
  886. ;
  887. ; pascal OSErr CSModifyConfiguration(GetModRequestConfigInfoPB *pb)
  888. ;
  889.     IF ¬ GENERATINGCFM THEN
  890.         Macro
  891.         _CSModifyConfiguration
  892.             moveq    #28,d0
  893.             dc.w     $AAF0
  894.         EndM
  895.     ELSE
  896.         IMPORT_CFM_FUNCTION    CSModifyConfiguration
  897.     ENDIF
  898.  
  899. ;
  900. ; pascal OSErr CSAccessConfigurationRegister(AccessConfigurationRegisterPB *pb)
  901. ;
  902.     IF ¬ GENERATINGCFM THEN
  903.         Macro
  904.         _CSAccessConfigurationRegister
  905.             moveq    #29,d0
  906.             dc.w     $AAF0
  907.         EndM
  908.     ELSE
  909.         IMPORT_CFM_FUNCTION    CSAccessConfigurationRegister
  910.     ENDIF
  911.  
  912. ;
  913. ; pascal OSErr CSReleaseConfiguration(ReleaseConfigurationPB *pb)
  914. ;
  915.     IF ¬ GENERATINGCFM THEN
  916.         Macro
  917.         _CSReleaseConfiguration
  918.             moveq    #30,d0
  919.             dc.w     $AAF0
  920.         EndM
  921.     ELSE
  922.         IMPORT_CFM_FUNCTION    CSReleaseConfiguration
  923.     ENDIF
  924.  
  925. ;
  926. ; pascal OSErr CSGetClientEventMask(GetSetClientEventMaskPB *pb)
  927. ;
  928.     IF ¬ GENERATINGCFM THEN
  929.         Macro
  930.         _CSGetClientEventMask
  931.             moveq    #31,d0
  932.             dc.w     $AAF0
  933.         EndM
  934.     ELSE
  935.         IMPORT_CFM_FUNCTION    CSGetClientEventMask
  936.     ENDIF
  937.  
  938. ;
  939. ; pascal OSErr CSSetClientEventMask(GetSetClientEventMaskPB *pb)
  940. ;
  941.     IF ¬ GENERATINGCFM THEN
  942.         Macro
  943.         _CSSetClientEventMask
  944.             moveq    #32,d0
  945.             dc.w     $AAF0
  946.         EndM
  947.     ELSE
  948.         IMPORT_CFM_FUNCTION    CSSetClientEventMask
  949.     ENDIF
  950.  
  951. ;
  952. ; pascal OSErr CSRequestSocketMask(ReqRelSocketMaskPB *pb)
  953. ;
  954.     IF ¬ GENERATINGCFM THEN
  955.         Macro
  956.         _CSRequestSocketMask
  957.             moveq    #33,d0
  958.             dc.w     $AAF0
  959.         EndM
  960.     ELSE
  961.         IMPORT_CFM_FUNCTION    CSRequestSocketMask
  962.     ENDIF
  963.  
  964. ;
  965. ; pascal OSErr CSReleaseSocketMask(ReqRelSocketMaskPB *pb)
  966. ;
  967.     IF ¬ GENERATINGCFM THEN
  968.         Macro
  969.         _CSReleaseSocketMask
  970.             moveq    #34,d0
  971.             dc.w     $AAF0
  972.         EndM
  973.     ELSE
  974.         IMPORT_CFM_FUNCTION    CSReleaseSocketMask
  975.     ENDIF
  976.  
  977.     ENDIF ; __CARDSERVICES__
  978.